.\" Copyright 2023, Josh Triplett <josh@joshtriplett.org>
.\" Copyright 2024, Alejandro Colomar <alx@kernel.org>
.\"
.\" SPDX-License-Identifier: Linux-man-pages-copyleft
.\"
.TH PR_GET_AUXV 2const 2024-06-01 "Linux man-pages 6.9.1"
.SH NAME
PR_GET_AUXV
\-
get the auxiliary vector
.SH LIBRARY
Standard C library
.RI ( libc ", " \-lc )
.SH SYNOPSIS
.nf
.BR "#include <linux/prctl.h>" "  /* Definition of " PR_* " constants */"
.B #include <sys/prctl.h>
.P
.BI "int prctl(PR_GET_AUXV, void " auxv [. size "], unsigned long " size ", 0L, 0L);"
.fi
.SH DESCRIPTION
Get the auxiliary vector (auxv) into the buffer pointed to by
.IR auxv ,
whose size is given by
.IR size .
.P
If the buffer is not long enough for the full auxiliary vector,
the copy will be truncated.
.SH RETURN VALUE
On success,
this call returns
the full size of the auxiliary vector.
On error, \-1 is returned, and
.I errno
is set to indicate the error.
.SH ERRORS
.TP
.B EFAULT
.I auxv
is an invalid address.
.SH STANDARDS
Linux.
.SH HISTORY
Linux 6.4.
.SH SEE ALSO
.BR prctl (2)
